/**
 * @file:          Config_StepperMotor.c
 * @brief:         
 * @details:       
 * @author:        wjh
 * @date created:  2023.06.12
 * @version:       1.0.0
 * @par copyright (c):
 *   
 * @par history (desc):
 *   version:1.0.0, wjh, 2023.06.12,12:43:05
 */
/* Include Files **************************************************************/
#include "ConfigOption.h"
#include "string.h"

/* Function Declare ***********************************************************/


/* Global Variable Define *****************************************************/
void Config_stepper_motor_default(StepperMotor *self);
StepperMotor stepper_motor_default = {.ConfigParam = Config_stepper_motor_default};
void Config_stepper_motor_default(StepperMotor *self)
{
    memset(self, 0, sizeof(StepperMotor));
    self->ConfigParam = Config_stepper_motor_default;
    self->Init = StepperMotor_Init;

    self->param_R = 2.55;//6.0;//
    self->param_L = 2.65e-3;//6.0e-3;//
    self->param_Ke = 0.1563;
    self->param_Kt = 88e-3;
    self->param_mass = 0.06;
    self->param_J = 1e-2;
    self->param_B = 1e-2;
    self->param_stepping_angle_degree = 1.8;
    self->param_phase_nums = 2;
    self->param_pole_pair = 50;
    self->param_power_supply = 24;
    self->param_rated_voltage = 2.5;
    self->param_rated_current = 1.0;
    self->param_maximum_holding_torque = 70;
}

void Config_stepper_motor_Corier_BJY36D08(StepperMotor *self);
StepperMotor stepper_motor_Corier_BJY36D08 = {.ConfigParam = Config_stepper_motor_Corier_BJY36D08};
void Config_stepper_motor_Corier_BJY36D08(StepperMotor *self)
{
    memset(self, 0, sizeof(StepperMotor));
    self->ConfigParam = Config_stepper_motor_Corier_BJY36D08;
    self->Init = StepperMotor_Init;

    self->param_Ke = 0.1;
    self->param_Kt = 1.0;
    self->param_power_supply = 24;
    self->param_rated_voltage = 2.5;
    self->param_rated_current = 1.0;
    self->param_stepping_angle_degree = 1.8;
    self->param_phase_nums = 2;
    self->param_R = 2.588;//2.5; 
    self->param_L = 0.85e-3;
    self->param_maximum_holding_torque = 70;
    self->param_J = 1e-2;
    self->param_B = 1e-2;
    self->param_mass = 0.06;
    self->param_pole_pair = 50;
}

void Config_stepper_motor_Corier_BJ42D29(StepperMotor *self);
StepperMotor stepper_motor_Corier_BJ42D29 = {.ConfigParam = Config_stepper_motor_Corier_BJ42D29};
void Config_stepper_motor_Corier_BJ42D29(StepperMotor *self)
{
    memset(self, 0, sizeof(StepperMotor));
    self->ConfigParam = Config_stepper_motor_Corier_BJ42D29;
    self->Init = StepperMotor_Init;

    self->param_Ke = 0.1050422;
    self->param_Kt = 1.0;
    self->param_power_supply = 24;
    self->param_rated_voltage = 2.5;
    self->param_rated_current = 1.0;
    self->param_stepping_angle_degree = 1.8;
    self->param_phase_nums = 2;
    self->param_R = 0.7295; 
    self->param_L = 1.004e-3;
    self->param_maximum_holding_torque = 70;
    self->param_J = 1e-2;
    self->param_B = 1e-2;
    self->param_mass = 0.06;
    self->param_pole_pair = 50;
}

void Config_stepper_motor_Corier_BJ42D29_30V06(StepperMotor *self);
StepperMotor stepper_motor_Corier_BJ42D29_30V06 = {.ConfigParam = Config_stepper_motor_Corier_BJ42D29_30V06};
void Config_stepper_motor_Corier_BJ42D29_30V06(StepperMotor *self)
{
    memset(self, 0, sizeof(StepperMotor));
    self->ConfigParam = Config_stepper_motor_Corier_BJ42D29_30V06;
    self->Init = StepperMotor_Init;

    self->param_Ke = 0.1050422;
    self->param_Kt = 1.0;
    self->param_power_supply = 24;
    self->param_rated_voltage = 2.5;
    self->param_rated_current = 1.0;
    self->param_stepping_angle_degree = 1.8;
    self->param_phase_nums = 2;
    self->param_R = 0.7295; 
    self->param_L = 1.004e-3;
    self->param_maximum_holding_torque = 70;
    self->param_J = 1e-2;
    self->param_B = 1e-2;
    self->param_mass = 0.06;
    self->param_pole_pair = 50;
}

void Config_stepper_motor_Corier_BJ42D41_14V07(StepperMotor *self);
StepperMotor stepper_motor_Corier_BJ42D41_14V07 = {.ConfigParam = Config_stepper_motor_Corier_BJ42D41_14V07};
void Config_stepper_motor_Corier_BJ42D41_14V07(StepperMotor *self)
{
    memset(self, 0, sizeof(StepperMotor));
    self->ConfigParam = Config_stepper_motor_Corier_BJ42D41_14V07;
    self->Init = StepperMotor_Init;

    self->param_Ke = 0.1747521;
    self->param_Kt = 1.0;
    self->param_power_supply = 24;
    self->param_rated_voltage = 2.5;
    self->param_rated_current = 1.0;
    self->param_stepping_angle_degree = 1.8;
    self->param_phase_nums = 2;
    self->param_R = 1.16215;
    self->param_L = 1.4905e-3;
    self->param_maximum_holding_torque = 70;
    self->param_J = 76e-7;
    self->param_B = 1e-2;
    self->param_mass = 0.06;
    self->param_pole_pair = 50;
}


void Config_stepper_motor_Corier_4240(StepperMotor *self);
StepperMotor stepper_motor_Corier_4240 = {.ConfigParam = Config_stepper_motor_Corier_4240};
void Config_stepper_motor_Corier_4240(StepperMotor *self)
{
    memset(self, 0, sizeof(StepperMotor));
    self->ConfigParam = Config_stepper_motor_Corier_4240;
    self->Init = StepperMotor_Init;

    self->param_Ke = 0.1747521;
    self->param_Kt = 1.0;
    self->param_power_supply = 24;
    self->param_rated_voltage = 2.5;
    self->param_rated_current = 1.0;
    self->param_stepping_angle_degree = 1.8;
    self->param_phase_nums = 2;
    self->param_R = 1.16215; 
    self->param_L = 1.4905e-3;
    self->param_maximum_holding_torque = 70;
    self->param_J = 50e-7;
    self->param_B = 1e-4;
    self->param_mass = 0.06;
    self->param_pole_pair = 50;
}


void Config_stepper_motor_Corier_BJ42D29_101V10_4248(StepperMotor *self);
StepperMotor stepper_motor_Corier_BJ42D29_101V10_4248 = {.ConfigParam = Config_stepper_motor_Corier_BJ42D29_101V10_4248};
void Config_stepper_motor_Corier_BJ42D29_101V10_4248(StepperMotor *self)
{
    memset(self, 0, sizeof(StepperMotor));
    self->ConfigParam = Config_stepper_motor_Corier_BJ42D29_101V10_4248;
    self->Init = StepperMotor_Init;

    self->param_Ke = 0.1747521;
    self->param_Kt = 1.0;
    self->param_power_supply = 24;
    self->param_rated_voltage = 2.5;
    self->param_rated_current = 1.0;
    self->param_stepping_angle_degree = 1.8;
    self->param_phase_nums = 2;
    self->param_R = 0.671; 
    self->param_L = 0.716e-3;
    self->param_maximum_holding_torque = 70;
    self->param_J = 50e-7;
    self->param_B = 1e-4;
    self->param_mass = 0.06;
    self->param_pole_pair = 50;
}


void Config_stepper_motor_MS17HDBEP4250_02_4260(StepperMotor *self);
StepperMotor stepper_motor_MS17HDBEP4250_02_4260 = {.ConfigParam = Config_stepper_motor_MS17HDBEP4250_02_4260};
void Config_stepper_motor_MS17HDBEP4250_02_4260(StepperMotor *self)
{
    memset(self, 0, sizeof(StepperMotor));
    self->ConfigParam = Config_stepper_motor_MS17HDBEP4250_02_4260;
    self->Init = StepperMotor_Init;

    self->param_Ke = 0.1747521;
    self->param_Kt = 1.0;
    self->param_power_supply = 24;
    self->param_rated_voltage = 2.5;
    self->param_rated_current = 1.0;
    self->param_stepping_angle_degree = 1.8;
    self->param_phase_nums = 2;
    self->param_R = 1.0; 
    self->param_L = 0.95e-3;
    self->param_maximum_holding_torque = 70;
    self->param_J = 50e-7;
    self->param_B = 1e-4;
    self->param_mass = 0.06;
    self->param_pole_pair = 50;
}


void Config_stepper_motor_Corier_BJ42D41_31V03_4260(StepperMotor *self);
StepperMotor stepper_motor_Corier_BJ42D41_31V03_4260 = {.ConfigParam = Config_stepper_motor_Corier_BJ42D41_31V03_4260};
void Config_stepper_motor_Corier_BJ42D41_31V03_4260(StepperMotor *self)
{
    memset(self, 0, sizeof(StepperMotor));
    self->ConfigParam = Config_stepper_motor_Corier_BJ42D41_31V03_4260;
    self->Init = StepperMotor_Init;

    self->param_Ke = 0.0823;
    self->param_Kt = 0.1975;
    self->param_power_supply = 24;
    self->param_rated_voltage = 2.5;
    self->param_rated_current = 1.0;
    self->param_stepping_angle_degree = 1.8;
    self->param_phase_nums = 2;
    self->param_R = 0.345; 
    self->param_L = 0.245e-3;
    self->param_maximum_holding_torque = 70;
    self->param_J = 50e-7;
    self->param_B = 1e-4;
    self->param_mass = 0.06;
    self->param_pole_pair = 50;
}


void Config_stepper_motor_Corier_BJ42D41_32V01_4260(StepperMotor *self);
StepperMotor stepper_motor_Corier_BJ42D41_32V01_4260 = {.ConfigParam = Config_stepper_motor_Corier_BJ42D41_32V01_4260};
void Config_stepper_motor_Corier_BJ42D41_32V01_4260(StepperMotor *self)
{
    memset(self, 0, sizeof(StepperMotor));
    self->ConfigParam = Config_stepper_motor_Corier_BJ42D41_32V01_4260;
    self->Init = StepperMotor_Init;

    self->param_Ke = 0.121125;
    self->param_Kt = 262.5e-3;
    self->param_power_supply = 24;
    self->param_rated_voltage = 2.5;
    self->param_rated_current = 1.0;
    self->param_stepping_angle_degree = 1.8;
    self->param_phase_nums = 2;
    self->param_R = 0.72; 
    self->param_L = 1.1e-3;
    self->param_maximum_holding_torque = 70;
    self->param_J = 50e-7;
    self->param_B = 1e-4;
    self->param_mass = 0.06;
    self->param_pole_pair = 50;
}


void Config_stepper_motor_Moons_MS17HDB3P4250_4248(StepperMotor *self);
StepperMotor stepper_motor_Moons_4248_MS17HDB3P4250 = {.ConfigParam = Config_stepper_motor_Moons_MS17HDB3P4250_4248};
void Config_stepper_motor_Moons_MS17HDB3P4250_4248(StepperMotor *self)
{
    memset(self, 0, sizeof(StepperMotor));
    self->ConfigParam = Config_stepper_motor_Moons_MS17HDB3P4250_4248;
    self->Init = StepperMotor_Init;

    self->param_Ke = 0.11777F;
    self->param_Kt = 225e-3;
    self->param_power_supply = 24;
    self->param_rated_voltage = 2.5;
    self->param_rated_current = 1.0;
    self->param_stepping_angle_degree = 1.8;
    self->param_phase_nums = 2;
    self->param_R = 0.740;
    self->param_L = 1.01e-3;
    self->param_maximum_holding_torque = 70;
    self->param_J = 71e-7;
    self->param_B = 1e-4;
    self->param_mass = 0.06;
    self->param_pole_pair = 50;
}


void Config_stepper_motor_Red_X(StepperMotor *self);
StepperMotor stepper_motor_Red_X = {.ConfigParam = Config_stepper_motor_Red_X};
void Config_stepper_motor_Red_X(StepperMotor *self)
{
    memset(self, 0, sizeof(StepperMotor));
    self->ConfigParam = Config_stepper_motor_Red_X;
    self->Init = StepperMotor_Init;

    self->param_Ke = 0.11777F;
    self->param_Kt = 225e-3;
    self->param_power_supply = 24;
    self->param_rated_voltage = 2.5;
    self->param_rated_current = 1.0;
    self->param_stepping_angle_degree = 1.8;
    self->param_phase_nums = 2;
    self->param_R = 1.3; 
    self->param_L = 1.96e-3;
    self->param_maximum_holding_torque = 70;
    self->param_J = 71e-7;
    self->param_B = 1e-4;
    self->param_mass = 0.06;
    self->param_pole_pair = 50;
}


void Config_stepper_motor_Moons_MS17HDB3P420A_02_Red_Y(StepperMotor *self);
StepperMotor stepper_motor_MS17HDB3P420A_02_Red_Y = {.ConfigParam = Config_stepper_motor_Moons_MS17HDB3P420A_02_Red_Y};
void Config_stepper_motor_Moons_MS17HDB3P420A_02_Red_Y(StepperMotor *self)
{
    memset(self, 0, sizeof(StepperMotor));
    self->ConfigParam = Config_stepper_motor_Moons_MS17HDB3P420A_02_Red_Y;
    self->Init = StepperMotor_Init;

    self->param_Ke = 0.11777F;
    self->param_Kt = 225e-3;
    self->param_power_supply = 24;
    self->param_rated_voltage = 2.5;
    self->param_rated_current = 1.0;
    self->param_stepping_angle_degree = 1.8;
    self->param_phase_nums = 2;
    self->param_R = 1.13; 
    self->param_L = 1.8e-3;
    self->param_maximum_holding_torque = 70;
    self->param_J = 71e-7;
    self->param_B = 1e-4;
    self->param_mass = 0.06;
    self->param_pole_pair = 50;
}

void Config_stepper_motor_Corier_BJY36D12_04V21(StepperMotor *self);
StepperMotor stepper_motor_Corier_BJY36D12_04V21 = {.ConfigParam = Config_stepper_motor_Corier_BJY36D12_04V21};
void Config_stepper_motor_Corier_BJY36D12_04V21(StepperMotor *self)
{
    memset(self, 0, sizeof(StepperMotor));
    self->ConfigParam = Config_stepper_motor_Corier_BJY36D12_04V21;
    self->Init = StepperMotor_Init;

    self->param_Ke = 0.0463;
    self->param_Kt = 88e-3;
    self->param_power_supply = 24;
    self->param_rated_voltage = 2.5;
    self->param_rated_current = 1.0;
    self->param_stepping_angle_degree = 1.8;
    self->param_phase_nums = 2;
    self->param_R = 2.0; 
    self->param_L = 1.2e-3;
    self->param_maximum_holding_torque = 70;
    self->param_J = 1e-2;
    self->param_B = 1e-2;
    self->param_mass = 0.06;
    self->param_pole_pair = 50;
}

/* 丝杆电机 */
void Config_stepper_motor_Corier_4240_BJE42D22_53V08L20(StepperMotor *self);
StepperMotor stepper_motor_Corier_4240_BJE42D22_53V08L20 = {.ConfigParam = Config_stepper_motor_Corier_4240_BJE42D22_53V08L20};
void Config_stepper_motor_Corier_4240_BJE42D22_53V08L20(StepperMotor *self)
{
    memset(self, 0, sizeof(StepperMotor));
    self->ConfigParam = Config_stepper_motor_Corier_4240_BJE42D22_53V08L20;
    self->Init = StepperMotor_Init;

    self->param_Ke = 0.11777F;
    self->param_Kt = 88e-3;
    self->param_power_supply = 24;
    self->param_rated_voltage = 2.5;
    self->param_rated_current = 1.0;
    self->param_stepping_angle_degree = 1.8;
    self->param_phase_nums = 2;
    self->param_R = 2.0; 
    self->param_L = 1.95e-3;//30kHz
    self->param_maximum_holding_torque = 70;
    self->param_J = 1e-2;
    self->param_B = 1e-2;
    self->param_mass = 0.06;
    self->param_pole_pair = 50;
}

void Config_stepper_motor_Corier_4248_BJ42D29_41V07(StepperMotor *self);
StepperMotor stepper_motor_Corier_4248_BJ42D29_41V07 = {.ConfigParam = Config_stepper_motor_Corier_4248_BJ42D29_41V07};
void Config_stepper_motor_Corier_4248_BJ42D29_41V07(StepperMotor *self)
{
    memset(self, 0, sizeof(StepperMotor));
    self->ConfigParam = Config_stepper_motor_Corier_4248_BJ42D29_41V07;
    self->Init = StepperMotor_Init;

    self->param_R = 5.5; 
    self->param_L = 4.6e-3;//30kHz
    self->param_Ke = 0.11777F;

    self->param_Kt = 88e-3;
    self->param_mass = 0.06;
    self->param_J = 1e-2;
    self->param_B = 1e-2;

    self->param_stepping_angle_degree = 1.8;
    self->param_phase_nums = 2;
    self->param_pole_pair = 50;

    self->param_power_supply = 24;
    self->param_rated_voltage = 2.5;
    self->param_rated_current = 1.0;
    self->param_maximum_holding_torque = 70;
}

void Config_stepper_motor_Moons_4234_MS17HD4P4150(StepperMotor *self);
StepperMotor stepper_motor_Moons_4234_MS17HD4P4150 = {.ConfigParam = Config_stepper_motor_Moons_4234_MS17HD4P4150};
void Config_stepper_motor_Moons_4234_MS17HD4P4150(StepperMotor *self)
{
    memset(self, 0, sizeof(StepperMotor));
    self->ConfigParam = Config_stepper_motor_Moons_4234_MS17HD4P4150;
    self->Init = StepperMotor_Init;

    self->param_R = 1.65; 
    self->param_L = 1.65e-3;//30kHz
    self->param_Ke = 0.11777F;

    self->param_Kt = 320e-3;
    self->param_mass = 0.06;
    self->param_J = 1e-2;
    self->param_B = 1e-2;
    
    self->param_stepping_angle_degree = 1.8;
    self->param_phase_nums = 2;
    self->param_pole_pair = 50;

    self->param_power_supply = 24;
    self->param_rated_voltage = 2.5;
    self->param_rated_current = 1.5;
    self->param_maximum_holding_torque = 70;
}

void Config_stepper_motor_Moons_4248_MS17HD3L4250_02X(StepperMotor *self);
StepperMotor stepper_motor_Moons_4248_MS17HD3L4250_02X = {.ConfigParam = Config_stepper_motor_Moons_4248_MS17HD3L4250_02X};
void Config_stepper_motor_Moons_4248_MS17HD3L4250_02X(StepperMotor *self)
{
    memset(self, 0, sizeof(StepperMotor));
    self->ConfigParam = Config_stepper_motor_Moons_4248_MS17HD3L4250_02X;
    self->Init = StepperMotor_Init;

    self->param_R = 0.78;//0.75; 
    self->param_L = 1.4e-3;//730e-6;//
    self->param_Ke = 3.1 / (300 * BM_2PI / 60);//0.098676F;

    self->param_Kt = 320e-3;
    self->param_mass = 0.06;
    self->param_J = 1e-2;
    self->param_B = 1e-2;

    self->param_stepping_angle_degree = 1.8;
    self->param_phase_nums = 2;
    self->param_pole_pair = 50;

    self->param_power_supply = 24;
    self->param_rated_voltage = 2.5;
    self->param_rated_current = 1.5;
    self->param_maximum_holding_torque = 70;
}

void Config_stepper_motor_Moons_4240_MS17HDB2L420D_01(StepperMotor *self);
StepperMotor stepper_motor_Moons_4240_MS17HDB2L420D_01 = {.ConfigParam = Config_stepper_motor_Moons_4240_MS17HDB2L420D_01};
void Config_stepper_motor_Moons_4240_MS17HDB2L420D_01(StepperMotor *self)
{
    memset(self, 0, sizeof(StepperMotor));
    self->ConfigParam = Config_stepper_motor_Moons_4240_MS17HDB2L420D_01;
    self->Init = StepperMotor_Init;

    self->param_R = 0.6; 
    self->param_L = 1.0e-3;//RL id //0.6e-3;//30kHz
    self->param_Ke = 3.2 / (300 * BM_2PI / 60);//0.101859F;

    self->param_Kt = 320e-3;
    self->param_mass = 0.06;
    self->param_J = 1e-2;
    self->param_B = 1e-2;

    self->param_stepping_angle_degree = 1.8;
    self->param_phase_nums = 2;
    self->param_pole_pair = 50;

    self->param_power_supply = 24;
    self->param_rated_voltage = 2.5;
    self->param_rated_current = 1.5;
    self->param_maximum_holding_torque = 70;
}

void Config_stepper_motor_Moons_4248_MS17HDB3L425A_01(StepperMotor *self);
StepperMotor stepper_motor_Moons_4248_MS17HDB3L425A_01 = {.ConfigParam = Config_stepper_motor_Moons_4248_MS17HDB3L425A_01};
void Config_stepper_motor_Moons_4248_MS17HDB3L425A_01(StepperMotor *self)
{
    memset(self, 0, sizeof(StepperMotor));
    self->ConfigParam = Config_stepper_motor_Moons_4248_MS17HDB3L425A_01;
    self->Init = StepperMotor_Init;
    
    self->param_R = 0.7; 
    self->param_L = 0.93e-3;//30kHz
    self->param_Ke = 0.11777F;

    self->param_Kt = 320e-3;
    self->param_mass = 0.06;
    self->param_J = 1e-2;
    self->param_B = 1e-2;

    self->param_stepping_angle_degree = 1.8;
    self->param_phase_nums = 2;
    self->param_pole_pair = 50;

    self->param_power_supply = 24;
    self->param_rated_voltage = 2.5;
    self->param_rated_current = 1.5;
    self->param_maximum_holding_torque = 70;
}

void Config_stepper_motor_Moons_4248_MS17HDB3L420B_01(StepperMotor *self);
StepperMotor stepper_motor_Moons_4248_MS17HDB3L420B_01 = {.ConfigParam = Config_stepper_motor_Moons_4248_MS17HDB3L420B_01};
void Config_stepper_motor_Moons_4248_MS17HDB3L420B_01(StepperMotor *self)
{
    memset(self, 0, sizeof(StepperMotor));
    self->ConfigParam = Config_stepper_motor_Moons_4248_MS17HDB3L420B_01;
    self->Init = StepperMotor_Init;

    self->param_R = 1.14;//0.75; 
    self->param_L = 1.53e-3;//730e-6;//
    self->param_Ke = 4.7 / (300 * BM_2PI / 60);//0.098676F;

    self->param_Kt = 285e-3;
    self->param_mass = 0.06;
    self->param_J = 1e-2;
    self->param_B = 1e-2;

    self->param_stepping_angle_degree = 1.8;
    self->param_phase_nums = 2;
    self->param_pole_pair = 50;

    self->param_power_supply = 24;
    self->param_rated_voltage = 2.5;
    self->param_rated_current = 1.5;
    self->param_maximum_holding_torque = 70;
}